cURL php NodeJS Python cSharp


The purpose of the Live SERP API AI Summary endpoint is to provide a summary of the content found on any SERP and generate a response based on the user’s specified prompt.
To obtain results, you have to specify task_id, which you can find in the response to the POST request.
Learn more in our Help Center.

Your account will be charged for each request to this endpoint.

Instead of ‘login’ and ‘password’ use your credentials from

// You can download this file from here
$api_url = '';
// Instead of 'login' and 'password' use your credentials from
$client = new RestClient($api_url, null, 'login', 'password');

$post_array = array();
// simple way to get a result
$post_array[] = array(
   "task_id" => "07031739-1535-0139-0000-9d1e639a5b7d",
   "prompt" => "explain what DataForSEO is",
   "include_links" => true,
   "fetch_content" => true
try {
   // POST /v3/serp/ai_summary
   // the full list of possible parameters is available in documentation
   $result = $client->post('/v3/serp/ai_summary', $post_array);
   // do something with post result
} catch (RestClientException $e) {
   echo "n";
   print "HTTP code: {$e->getHttpCode()}n";
   print "Error code: {$e->getCode()}n";
   print "Message: {$e->getMessage()}n";
   print  $e->getTraceAsString();
   echo "n";

$client = null;

The above command returns JSON structured like this:

  "version": "0.1.20221214",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "20.6765 sec.",
  "cost": 0.01,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
      "id": "07031743-1535-0559-0000-6e58e03c9a8a",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "20.6074 sec.",
      "cost": 0.01,
      "result_count": 1,
      "path": [
      "data": {
        "api": "serp",
        "function": "ai_summary",
        "task_id": "07031739-1535-0139-0000-9d1e639a5b7d",
        "prompt": "explain what DataForSEO is",
        "include_links": true,
        "fetch_content": true
      "result": [
          "items_count": 1,
          "items": [
              "summary": "DataForSEO is a powerful API stack that provides comprehensive SEO and digital marketing data solutions. It offers various APIs for different purposes, including SERP API, Google Ads API, Google Trends API, Domain Analytics API, On-Page API, DataForSEO Labs API, Backlinks API, and Merchant API.\nThe SERP API allows users to get a full overview of search engine results pages (SERP) and keyword rankings for any location and language. The Google Ads API provides data from Google Keyword Planner, including daily impressions, CPC, click estimation, search volume, competition level, and more for a bulk of keywords. The Google Trends API helps eliminate guesswork by synthesizing market research and SEO data to identify, compare, and predict keyword popularity trends across various platforms like YouTube, Google Search, Images, News, and Shopping.\nThe Domain Analytics API offers a 360° overview of any website, including monitoring Whois records, competitor traffic, and tech stacks. The On-Page API provides data for on-page analytics, allowing users to analyze any website for a multitude of parameters. The DataForSEO Labs API offers advanced search analytics, providing billions of keyword ideas enriched with relevant data and search visibility analytics.\nThe Backlinks API provides accurate and up-to-date backlink data from DataForSEO's rapidly growing link index. It features nine endpoints that can facilitate the process of analyzing backlinks. Lastly, the Merchant API powers up e-commerce analytics with data from Amazon and Google Shopping, providing essential data for e-commerce solutions, from pricing analysis to assortment optimization.\nDataForSEO is the leading provider of SEO data in the marketing technology industry. With an API-led approach to data delivery, DataForSEO enables SEO-software companies and agencies to build their dream SEO software, from simple rank tracking solutions to enterprise-level platforms. They have over 300 happy customers and provide a reliable and efficient data provider for SEO needs. [] [] []"

All POST data should be sent in the JSON format (UTF-8 encoding). The task setting is done using the POST method. When setting a task, you should send all task parameters in the task array of the generic POST array.

Description of the fields for setting a task:

Field name Type Description
task_id string task identifier
required field
unique identifier of the associated task in the UUID format
you will be able to use it within 30 days to request the results of the task at any time
prompt string AI prompt
optional field
additional task for AI summarizer, also referred to as
any form of text, question or information that communicates to AI what response you’re looking for;
note: your prompt has to be relevant to the keyword specified in the POST request to SERP API
support_extra boolean support extra SERP features
optional field
if set to true, the AI model will consider the following extra SERP features, in addition to organic results: answer_box, knowledge_graph, featured_snippet;
default value: true
fetch_content boolean fetch content from pages in SERPs
optional field
if set to true, the API will fetch the content from pages featured in SERP results, and the AI model will consider this content when generating the summary in the result;
default value: false
include_links boolean include source links in the summary
optional field
if set to true, the summary field in the API response will contain links to sources of the generated summary;
default value: false

As a response of the API server, you will receive JSON-encoded data containing a tasks array with the information specific to the set tasks.

Description of the fields in the results array:

Field name Type Description
version string the current version of the API
status_code integer general status code
you can find the full list of the response codes here
Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions
status_message string general informational message
you can find the full list of general informational messages here
time string execution time, seconds
cost float total tasks cost, USD
tasks_count integer the number of tasks in the tasks array
tasks_error integer the number of tasks in the tasks array returned with an error
tasks array array of tasks
        id string task identifier
unique task identifier in our system in the UUID format
        status_code integer status code of the task
generated by DataForSEO; can be within the following range: 10000-60000
you can find the full list of the response codes here
        status_message string informational message of the task
you can find the full list of general informational messages here
        time string execution time, seconds
        cost float cost of the task, USD
        result_count integer number of elements in the result array
        path array URL path
        data object contains the same parameters that you specified in the POST request
        result array array of results
            items_count integer number of items in the results array
            items array items array
                summary string generated summary
summary generated by the AI model according to the parameters specified in the request